### 2.21 `ldiv`—divide two long integers

Synopsis

         #include <stdlib.h>
         ldiv_t ldiv(long n, long d);

Description
Divide n/d, returning quotient and remainder as two long integers in a structure `ldiv_t`.

Returns
The result is represented with the structure

          typedef struct
          {
           long quot;
           long rem;
          } ldiv_t;

where the `quot` field represents the quotient, and `rem` the remainder. For nonzero d, if `r`= ldiv(`n`,`d`);`' then n equals `r`.rem +` d`*`r`.quot`'.

To divide `int` rather than `long` values, use the similar function `div`.

Portability
`ldiv` is ANSI.

No supporting OS subroutines are required.